package com.work.daily.stream;

import com.work.daily.stream.data.Person;

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

/**
 * Stream 的收集(collect)
 * collect，收集，可以说是内容最繁多、功能最丰富的部分了。从字面上去理解，就是把一个流收集起来，
 * 最终可以是收集成一个值也可以收集成一个新的集合。
 *
 * @author Shengkang.Mo
 * @create 2020-11-27 16:37
 * 接合(joining)
 * joining可以将stream中的元素用特定的连接符（没有的话，则直接连接）连接成一个字符串。
 */
public class Stream_7_4 {
    public static void main(String[] args) {
        List<Person> personList = Person.initData();

        //拼接员工姓名
        String names = personList.stream().map(p -> p.getName()).collect(Collectors.joining(","));
        System.out.println("所有员工姓名：" + names);

        //拼接字符串
        List<String> list = Arrays.asList("A", "B", "C");
        String string = list.stream().collect(Collectors.joining("-"));
        System.out.println("拼接字符串：" + string);
    }
}
